package dwarffortress.data;

import dwarffortress.annotations.FixedValue;
import dwarffortress.annotations.SpecialLength;
import dwarffortress.annotations.FieldRef;

public class DFWorld {
    @FixedValue (value = 0)
    public short f000_char_zero;
    public int f001_int;
    public int f002_int;
    public int f003_int;
    public int f004_int;
    @FixedValue(value =  -1)
    public int f005_int;
    public int f006_int;
    public int f007_int;
    public int f008_int;
    public int f009_int;
    public int f010_int;
    public int f011_int;
    public int f012_numberOfSites;
    @FixedValue(value =  -1)
    public int f013_int;

    @FixedValue(value =  1)
    public byte f014_byte;

    public String f015_worldname;

    @FixedValue(value =  0)
    public short f016_char_zero_maybeString;

    public int f018_worldNamePart1;//Usually -1
    public int f019_worldNamePart2;//Usually -1
    public int f020_worldNamePart3;//Usually -1
    public int f021_worldNamePart4;//Usually -1
    public int f022_worldNamePart5;//Usually -1
    public int f023_worldNamePart6;//Usually -1
    public int f024_worldNamePart7;//Usually -1


    public int field2_8_int;//0

    public int field2_9_int;
    public short field2_10_short;
    public short field2_11_short;
    public short field2_12_short;
    public int field2_13_int;
    public short field2_14_short;
    public byte field2_15_byte;
    public short field2_16_short;
    public int field2_17_int;
    public int field2_18_int;
    public int field2_19_int;




    public String f036_worldTranslatedName;
    public String[] rawWoodMatgloss;
    public String[] rawStoneMatgloss;
    public String[] rawMetalMatgloss;
    public String[] rawPlantMatgloss;
    public String[] rawBodyIDs;
    public String[] rawBodyGlossIDs;
    public String[] rawCreatureIDs;
    public String[] rawItemIDs;
    public String[] rawEntityIDs;
    public String[] rawWordIDs;
    public String[] rawSymbolIDs;
    public String[] rawLanguageIDs;
    public String[] rawColorIDs;
    public String[] rawShapeIDs;
    public String[] rawReactionIDs;

    public int field3;
    public int field4;
    public int[] entityIDs;
    public int[] otherIDs;
    public int field5;
    public int field6;
    public int field7;
    @SpecialLength(fieldRef = FieldRef.OFFSET, offset = -5)
    public DFEntity[] entities;
}
